Introduction

Welcome to my portfolio for Computational Musicology!

For this portfolio I analyzed two songs using a variety of different metrics. These metrics helped me understand how my songs were structured, including aspects such as timbre and tempo. By applying computational methods, I was able to extract meaningful insights and identify patterns within the songs. The analysis provided a deeper understanding of how musical elements come together to form the unique sound of each track.

For this project I used an AI-tool to generate the tunes, namely JenAI, the idea of these two prompts for the tunes were specified by using ChatGPT (I made two prompts myself and let ChatGPT generate even more specific prompts)

Song #1

For ‘wietske-b-1.mp3’ I used: Create a modern indie-pop track with a warm, intimate vibe, blending organic acoustic elements with subtle electronic textures. The song should feature delicate yet expressive string arrangements (such as a small string ensemble or chamber-style strings) that add depth and emotion without overpowering the core melody. The instrumentation should include gentle guitar or piano, soft percussion, and atmospheric pads or synths to enhance the dreamy, introspective feel. The track should be between 2 to 4 minutes long, suitable for a public broadcaster.

And this is what it sounds like:

Song #2

For ‘wietske-b-2.mp3’ I used: Create a high-energy pop-rock track infused with modern synth elements. The song should feature driving drums, a tight bassline, and rhythmic electric guitars with a mix of clean and overdriven tones. Synths should add depth with lush pads, arpeggiated sequences, and subtle electronic effects. The track should feel anthemic and uplifting, with a dynamic build and a powerful, memorable chorus. 2-4 minutes.

And this is what it sounds like:

Timbre

Visual Song #1

Ceptogram Song #1

Song #1 Timbre-based Self-Similarity Matrix

Visuals Song #2

Ceptogram Song #2

Song #2 Timbre-based

Description

The actual description about these two diagram types is gonna be in this column.

Harmony & Pitch

Chromagrams

Chromagram Song #1

Chromagram Song #2

Chordograms

Song #1 Chordogram

Song #2 Chordogram

Chroma-based Self Similarity Matrices

Song #1 Chroma-based Self Similarity Matrix

<ggproto object: Class CoordFixed, CoordCartesian, Coord, gg>
    aspect: function
    backtransform_range: function
    clip: on
    default: FALSE
    distance: function
    expand: TRUE
    is_free: function
    is_linear: function
    labels: function
    limits: list
    modify_scales: function
    range: function
    ratio: 1
    render_axis_h: function
    render_axis_v: function
    render_bg: function
    render_fg: function
    setup_data: function
    setup_layout: function
    setup_panel_guides: function
    setup_panel_params: function
    setup_params: function
    train_panel_guides: function
    transform: function
    super:  <ggproto object: Class CoordFixed, CoordCartesian, Coord, gg>

Song #2 Chroma-based Self Similarity Matrix

<ggproto object: Class CoordFixed, CoordCartesian, Coord, gg>
    aspect: function
    backtransform_range: function
    clip: on
    default: FALSE
    distance: function
    expand: TRUE
    is_free: function
    is_linear: function
    labels: function
    limits: list
    modify_scales: function
    range: function
    ratio: 1
    render_axis_h: function
    render_axis_v: function
    render_bg: function
    render_fg: function
    setup_data: function
    setup_layout: function
    setup_panel_guides: function
    setup_panel_params: function
    setup_params: function
    train_panel_guides: function
    transform: function
    super:  <ggproto object: Class CoordFixed, CoordCartesian, Coord, gg>

Description

The actual description about these two diagram types is gonna be in this column.

Novelty functions

Visual Song #1

Energy-based Song #1

Spectral-Based Song #1

Visual Song #2

Energy-based Song #2

Spectral-based Song #2

Description

This is gonna be a place where we discuss the diagrams.

Rhythm and Tempo

Visuals Song cyclic = False

Song #1; cyclic = False

Tempogram Song #2: cyclic=false

Visuals Song cyclic is True

Song # 1; cyclic = True

Tempogram Song #2: cyclic=true

Description

This is gonna be a place where we discuss the diagrams.

Week 12: Heat Map

Week 12: Classification

          Truth
Prediction AI Non-AI
    AI     35     16
    Non-AI 14     25

# A tibble: 2 × 3
  class  precision recall
  <fct>      <dbl>  <dbl>
1 AI         0.686  0.714
2 Non-AI     0.641  0.610

Week 12: Random Forest

# A tibble: 2 × 3
  class  precision recall
  <fct>      <dbl>  <dbl>
1 AI         0.667  0.694
2 Non-AI     0.615  0.585